package com.lk.ii.service.impl;

import java.util.List;
import com.lk.common.utils.DateUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.lk.ii.mapper.IiActivityMapper;
import com.lk.ii.domain.IiActivity;
import com.lk.ii.service.IIiActivityService;
import com.lk.common.core.text.Convert;

/**
 * 活动Service业务层处理
 * 
 * @author lk
 * @date 2021-02-05
 */
@Service
public class IiActivityServiceImpl implements IIiActivityService
{
    @Autowired
    private IiActivityMapper iiActivityMapper;

    @Override
    public List<IiActivity> getComingActivityList( String startTime, Long pageSize, Long offset)
    {
        return iiActivityMapper.getComingActivityList(startTime,pageSize, offset);
    }

    /**
     * 查询活动
     * 
     * @param id 活动ID
     * @return 活动
     */
    @Override
    public IiActivity selectIiActivityById(Long id)
    {
        return iiActivityMapper.selectIiActivityById(id);
    }

    /**
     * 查询活动列表
     * 
     * @param iiActivity 活动
     * @return 活动
     */
    @Override
    public List<IiActivity> selectIiActivityList(IiActivity iiActivity)
    {
        return iiActivityMapper.selectIiActivityList(iiActivity);
    }

    /**
     * 新增活动
     * 
     * @param iiActivity 活动
     * @return 结果
     */
    @Override
    public int insertIiActivity(IiActivity iiActivity)
    {
        iiActivity.setCreateTime(DateUtils.getNowDate());
        return iiActivityMapper.insertIiActivity(iiActivity);
    }

    /**
     * 修改活动
     * 
     * @param iiActivity 活动
     * @return 结果
     */
    @Override
    public int updateIiActivity(IiActivity iiActivity)
    {
        iiActivity.setUpdateTime(DateUtils.getNowDate());
        return iiActivityMapper.updateIiActivity(iiActivity);
    }

    /**
     * 删除活动对象
     * 
     * @param ids 需要删除的数据ID
     * @return 结果
     */
    @Override
    public int deleteIiActivityByIds(String ids)
    {
        return iiActivityMapper.deleteIiActivityByIds(Convert.toStrArray(ids));
    }

    /**
     * 删除活动信息
     * 
     * @param id 活动ID
     * @return 结果
     */
    @Override
    public int deleteIiActivityById(Long id)
    {
        return iiActivityMapper.deleteIiActivityById(id);
    }


    /**
     * 本月的查询
     * @param first 本月的第一天
     * @param last 本月的最后一天
     * @return  本月之内的数据
     */
    @Override
    public List<IiActivity> selectMonth(String first,String last){
        return iiActivityMapper.selectMonth(first, last);
    }

    /**
     * 本周的查询
     * @param weekBegin 本周一
     * @param weekEnd 本周日
     * @return 本周之内的数据
     */
    @Override
    public List<IiActivity> selectWeek(String weekBegin,String weekEnd){
        return iiActivityMapper.selectWeek(weekBegin, weekEnd);
    }

    /**
     * 活动状态的查询--已结束
     * @param format 当前时间
     * @return 已结束
     */
    public List<IiActivity> activeEnd(String format){
        return iiActivityMapper.activeEnd(format);
    }
    /**
     * 活动状态的查询--未开始
     * @param format 当前时间
     * @return 未开始
     */
    public List<IiActivity> activeStart(String format){
        return iiActivityMapper.activeStart(format);
    }
    /**
     * 活动状态的查询--报名中
     * @param format 当前时间
     * @return 报名中
     */
    public List<IiActivity> activeState(String format){
        return iiActivityMapper.activeState(format);
    }

}
